如果一天訂單有幾百筆,這下要是客戶打來問貨運進度,可就不妙了,所以我們需要一個搜尋功能。搜尋可以使用很多方法,例如客戶名稱,訂單時間,訂單狀態等,我們為講解方便
所以來完成客戶名稱搜尋吧。
今日目標:
*完成後台訂單列表的搜尋功能
1. ManageOrderController中新增SearchByUserName(),由於我們網站的使用者與訂單是兩個不同的資料庫,故我們先使用UserName搜尋出UserId後(行48~53),再至Orders表查詢該UserId的所有訂單(行57~65)。將結果丟給Index()的View (行64)
2. 打開[Views/ManageOrder/Index.cshtml],加入搜尋框與搜尋按鈕(行10~14),我們使用Form的方式將名稱為UserName的搜尋框(行12)內的值丟給ManageOrderController的SearchByUserName()執行 (行10)
3. 運行專案,點選上方的[訂單管理]
4. 此時可以看到搜尋框,我們輸入IT鐵人並按下[搜尋]按鈕
5. 可以發現購買會員為剛剛輸入關鍵的所有訂單結果都會顯示出來,可以按下[商品明細]試試看
6. 功能正常無誤
我們在後台訂單完成了一個基本的會員暱稱搜尋功能,搜尋功能其實可以有更多種,例如訂單總金額、訂單商品數量、訂單狀態(需加入欄位才可實作)等,基本原理都大同小異,就交給各位讀者依據需求去實現了。
明天我們繼續。
*今天的原始碼請參考這裡